package net.steam.easyjoboa.biz;

import java.util.List;
import net.steam.easyjoboa.entity.Employee;
import net.steam.easyjoboa.entity.PageBean;
import net.steam.easyjoboa.entity.PageBeans;

public interface EmployeeBiz {
	
	/**
	 * 登陆
	 * @param name
	 * @param password
	 * @return
	 */
	Employee doLogin(String name,String password);

	List<Employee> findEmpByPage(PageBean pageBean,Employee employee);
	
	/**
	 * 添加新员工
	 * @param employee
	 * @return
	 * @throws Exception 
	 */
	public Integer addEmployee(Employee employee) throws Exception;
	
	/**
	 * 更新员工信息
	 * @param employee
	 */
	public void updateEmployee(Employee employee);
	
	/**
	 * 删除员工
	 * @param employee
	 */
	public void delEmployee(Integer id);
	
	/**
	 * 查询员工信息
	 * @param employee
	 * @return
	 */
	public Employee findEmployeeById(Integer id);
	
	/**
	 * 查询除登陆用户以外的所有用户
	 * @param id
	 * @return
	 */
	public List<Employee> getAllEmployeesExceptLoginUserId(int id);
	
	/**
	 * 查询部门所有用户
	 * @param pageBean
	 * @param id
	 * @return
	 */
	public List<Employee> getEmployeesByDepartmentId(PageBeans pageBean,int id);
	
	/**
	 * 查询所有员工信息
	 * @param propertyName 指定列
	 * @param value 列的值
	 * @return
	 */
	public List<Employee> findAllEmployee(String propertyName, Object value);
	
	/**
	 * 根据筛选数据查询员工信息
	 * @param userName
	 * @param userId
	 * @param positionId
	 * @param departmentId
	 * @return
	 */
	public List<Employee> finEmployeesByProperty(Integer loginId,String userName, Integer userId,Integer positionId,Integer departmentId);


	List<Employee> getEmployeesList(int depId);
	public Employee getEmployeeById(int id);	
	public List<Employee> findEmployees(PageBeans pageBeans, Employee employee);
}
